

/*
定义String的一个format的方法，主要是用于'{0}---{1}...'.format(arg1,arg2)之类的格式化'
*/
 if (!String.prototype.format) {
    String.prototype.format = function () {
        var args = arguments;
        return this.replace(/{(\d+)}/g, function (match, number) {
            return typeof args[number] != 'undefined'
              ? args[number]
              : match
            ;
        });
    };
}


/*
评论显示md话，这里由于thinker-md的原因，可以支持对应的表情
 */
function commentmd() {
	$(".comment-mark").markdown({
		language : 'zh',
		fullscreen : {
			enable : false
		},
		resize : 'vertical',
		hiddenButtons : ["all"],

		onShow : function (e) {
			e.showPreview();
		}

	});
}

/*
文章显示为MD语法格式
 */
function postmd() {
	$(".post-article").markdown({
		language : 'zh',
		fullscreen : {
			enable : false
		},
		hiddenButtons : [],

		onShow : function (e) {
			var content = e.parseContent();

			if (content != '') {
				$('#post-preview').hide();
				$('#show-article').show().html(content);
				/*
				主要是md语法在django后台和单纯的使用thinker-md的有些显示不同（由于admin本身的css的原因)，
				类似这样的md语法
				 **xxx**
				---

				这里主要的麻烦是img的位置，可能需要
				 */
				$('.show-preview').children('h2').css({
					"margin" : "0",
					"padding" : "2px 5px 3px 5px",
					"font-size" : "11px",
					"text-align" : "left",
					"font-weight" : "bold",
					"background" : "#7CA0C7 url({0}) top left repeat-x".format($('#h2back').attr('src')),
					"color" : "#fff"
				});

			}
			$("div.post-article").remove();

		}

	});

	//缩小图片
	$("img").attr("onload", "AutoResizeImage(300,600,this)");

}

/*
本来是用主页显示的md，不过貌似没有用
 */
function homemd() {
	$(".home-article").markdown({
		language : 'zh',
		fullscreen : {
			enable : false
		},
		hiddenButtons : ["all"],

		onShow : function (e) {
			var content = e.parseContent();

			$('#atricle-preview').show().html(content)
			$("div.post-article").remove();

		}

	});

	//缩小图片
	$("img").attr("onload", "AutoResizeImage(300,600,this)");

}

/*
主要是用来缩小文章的图片，具体原因是因为使用粘贴方式的图片或本地上传的图片有时候可能会太大
 */
function AutoResizeImage(maxWidth, maxHeight, objImg) {
	var img = new Image();
	img.src = objImg.src;
	var hRatio;
	var wRatio;
	var Ratio = 1;
	var w = img.width;
	var h = img.height;
	wRatio = maxWidth / w;
	hRatio = maxHeight / h;
	if (maxWidth == 0 && maxHeight == 0) {
		Ratio = 1;
	} else if (maxWidth == 0) { //
		if (hRatio < 1)
			Ratio = hRatio;
	} else if (maxHeight == 0) {
		if (wRatio < 1)
			Ratio = wRatio;
	} else if (wRatio < 1 || hRatio < 1) {
		Ratio = (wRatio <= hRatio ? wRatio : hRatio);
	}
	if (Ratio < 1) {
		w = w * Ratio;
		h = h * Ratio;
	}
	objImg.height = h;
	objImg.width = w;
}